其他
重磅!Vue 3.0源代码公布后,究竟有哪些变更?
点击上方的终端研发部,右上角选择“设为星标”
每日早8点半,技术文章准时送上
公众号后台回复“1024”,获取作者独家秘制精品资料
作者:方应杭
兼容性
对 TypeScript 的使用
什么时候发正式版
代码结构
reactivity 目录:数据响应式系统,这是一个单独的系统,可以与任何框架配合使用。 runtime-core 目录:与平台无关的运行时。其实现的功能有虚拟 DOM 渲染器、Vue 组件和 Vue 的各种API,我们可以利用这个 runtime 实现针对某个具体平台的高阶 runtime,比如自定义渲染器。 runtime-dom 目录: 针对浏览器的 runtime。其功能包括处理原生 DOM API、DOM 事件和 DOM 属性等。 runtime-test 目录: 一个专门为了测试而写的轻量级 runtime。由于这个 rumtime 「渲染」出的 DOM 树其实是一个 JS 对象,所以这个 runtime 可以用在所有 JS 环境里。你可以用它来测试渲染是否正确。它还可以用于序列化 DOM、触发 DOM 事件,以及记录某次更新中的 DOM 操作。 server-renderer 目录: 用于 SSR。尚未实现。 compiler-core 目录: 平台无关的编译器. 它既包含可扩展的基础功能,也包含所有平台无关的插件。 shared 目录: 没有暴露任何 API,主要包含了一些平台无关的内部帮助方法。
@vue/runtime-core 模块
这个模块则基于上个模块,针对浏览器做了适配,如对 textarea 和 style 标签做了特殊处理。
vue 模块
阅读建议
先读 reactivity,能最快了解 Vue 3 的新特性; 再读 rumtime,理解组件和生命周期的实现; 如果还有时间再读 compiler,理解编译优化过程。
总结一下VUE3.0的改进
编译器(Compiler)
优化 “Block tree”
更夸张的 static tree hoisting 功能
支持 Source map
内置标识符前缀(又名 “stripWith”)
内置整齐打印(pretty-printing)功能
移除 source map 和标识符前缀功能后,使用 Brotli 压缩的浏览器版本精简了大约 10KB
运行时(Runtime)
同时支持 Composition API 和 Options API,以及 typings
基于 Proxy 实现的数据变更检测
支持 Fragments
支持 Portals
支持 Suspense w/ async setup()
本文完~
阅读更多
阿里的离职率真的是互联网大厂里最低的吗?
重磅!阿里内部偷师Android的开发规范文档
hi!99%的人都在过节,我回馈读者40本技术书,手慢无!
吵翻天!税后年薪170万的阿里P8程序员征婚被喷到死!
相信自己,没有做不到的,只有想不到的
在这里获得的不仅仅是技术!
喜欢就给个“在看”